Ext.onReady(function(){

    var h_crear_success = function(){
        X.set('nombre', '');
        X.set('codigo', '');
        X.set('tipo',   '');
        X.set('horas',  '');
        X.focus('nombre');
    }
    var h_crear_failure = function(){
        X.focus('nombre');
    }

    var h_empty_nombre   = function(){ X.focus('nombre'); }
    var h_empty_codigo   = function(){ X.focus('codigo'); }
    var h_empty_dpto     = function(){ X.focus('tipo');   }
    var h_empty_duracion = function(){ X.focus('horas');  }

    X.aStore({
        id     : 'tipoStore',
        fields : [
            'idTipo','nombre'
        ],
        data   : [
            [0,'Cultural'],[1,'Optativa'],[2,'Regular'],[3,'Tesis']
        ]
    });

    X.form.panel({
        id     : 'loadSubjectForm',
        height : 115,
        width  : 375,
        items  : [
            X.form.label  ({x:10,  y:16, text:'Nombre:'                   }),
            X.form.label  ({x:10,  y:46, text:'Código:'                   }),
            X.form.label  ({x:175, y:46, text:'Horas cátedra semanales:'  }),
            X.form.label  ({x:10,  y:76, text:'Tipo:'                     }),
            X.form.text   ({x:65,  y:10, width:285, id:'nombre'             }),
            X.form.text   ({x:65,  y:40, width:95,  id:'codigo', maxlen: 10 }),
            X.form.combo  ({x:65,  y:70, width:95,  id:'tipo',
                                                    dfield:'nombre',
                                                    vfield:'idTipo',
                                                    storeId:'tipoStore'     }),
            X.form.number ({x:315, y:40, width:35,  id:'horas',  maxlen: 2  }),
            X.form.button ({x:270, y:70, width:80,  id:'crear', text:'Crear'}),
        ]
    });

    X.event.button('crear', function(btn, event){
        if (X.isempty('nombre'))
            X.msg.failure('Complete el campo "Nombre".', h_empty_nombre    );
        else if (X.isempty('codigo'))
            X.msg.failure('Complete el campo "Código".', h_empty_codigo    );
        else if (X.isempty('horas'))
            X.msg.failure('Complete el campo "Horas".', h_empty_duracion);
        else if (X.isempty('tipo'))
            X.msg.failure('Seleccione un "Tipo".', h_empty_dpto);
        else
            X.ajax({
                url: '/materia/ajax-crear',
                params: {
                    nombre : X.value('nombre'),
                    codigo : X.value('codigo'),
                    tipo   : X.value('tipo'),
                    horas  : X.value('horas')
                },
                afterSuccess: h_crear_success,
                afterFailure: h_crear_failure
            });
    });

    X.win.panel({
        id      : 'creaWindow',
        title   : 'Cargar materia',
        modal   : false,
        items   : X.get('loadSubjectForm')
    });

    X.get('creaWindow').show();

});



